home *** CD-ROM | disk | FTP | other *** search
/ Aminet 41 / Aminet 41 (2001)(Schatztruhe)[!][Feb 2001].iso / Aminet / dev / c / libiconv_src.lha / autoconf / aclocal.m4 < prev    next >
Encoding:
M4 Source File  |  2000-11-07  |  18.0 KB  |  619 lines

  1. dnl local autoconf macros
  2. dnl Bruno Haible 2000-04-02
  3. dnl Marcus Daniels 1997-04-10
  4. dnl
  5. AC_PREREQ(2.12)dnl
  6. dnl
  7. dnl without AC_MSG_...:   with AC_MSG_... and caching:
  8. dnl   AC_TRY_CPP          CL_CPP_CHECK
  9. dnl   AC_TRY_COMPILE      CL_COMPILE_CHECK
  10. dnl   AC_TRY_LINK         CL_LINK_CHECK
  11. dnl   AC_TRY_RUN          CL_RUN_CHECK - would require cross-compiling support
  12. dnl Usage:
  13. dnl AC_TRY_CPP(INCLUDES,
  14. dnl            ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND])
  15. dnl CL_CPP_CHECK(ECHO-TEXT, CACHE-ID,
  16. dnl              INCLUDES,
  17. dnl              ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND])
  18. dnl AC_TRY_xxx(INCLUDES, FUNCTION-BODY,
  19. dnl            ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND])
  20. dnl CL_xxx_CHECK(ECHO-TEXT, CACHE-ID,
  21. dnl              INCLUDES, FUNCTION-BODY,
  22. dnl              ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND])
  23. dnl
  24. define(CL_CPP_CHECK,
  25. [AC_MSG_CHECKING(for $1)
  26. AC_CACHE_VAL($2,[
  27. AC_TRY_CPP([$3], $2=yes, $2=no)
  28. ])
  29. AC_MSG_RESULT([$]$2)
  30. if test [$]$2 = yes; then
  31.   ifelse([$4], , :, [$4])
  32. ifelse([$5], , , [else
  33.   $5
  34. ])dnl
  35. fi
  36. ])dnl
  37. dnl
  38. define(CL_COMPILE_CHECK,
  39. [AC_MSG_CHECKING(for $1)
  40. AC_CACHE_VAL($2,[
  41. AC_TRY_COMPILE([$3],[$4], $2=yes, $2=no)
  42. ])
  43. AC_MSG_RESULT([$]$2)
  44. if test [$]$2 = yes; then
  45.   ifelse([$5], , :, [$5])
  46. ifelse([$6], , , [else
  47.   $6
  48. ])dnl
  49. fi
  50. ])dnl
  51. dnl
  52. define(CL_LINK_CHECK,
  53. [AC_MSG_CHECKING(for $1)
  54. AC_CACHE_VAL($2,[
  55. AC_TRY_LINK([$3],[$4], $2=yes, $2=no)
  56. ])
  57. AC_MSG_RESULT([$]$2)
  58. if test [$]$2 = yes; then
  59.   ifelse([$5], , :, [$5])
  60. ifelse([$6], , , [else
  61.   $6
  62. ])dnl
  63. fi
  64. ])dnl
  65. dnl
  66. dnl CL_PROTO(IDENTIFIER, ACTION-IF-NOT-FOUND, FINAL-PROTOTYPE)
  67. define(CL_PROTO,
  68. [AC_MSG_CHECKING([for $1 declaration])
  69. AC_CACHE_VAL(cl_cv_proto_[$1], [$2
  70. cl_cv_proto_$1="$3"])
  71. cl_cv_proto_$1=`echo "[$]cl_cv_proto_$1" | tr -s ' ' | sed -e 's/( /(/'`
  72. AC_MSG_RESULTPROTO([$]cl_cv_proto_$1)
  73. ])dnl
  74. dnl
  75. dnl CL_PROTO_RET(INCLUDES, DECL, CACHE-ID, TYPE-IF-OK, TYPE-IF-FAILS)
  76. define(CL_PROTO_RET,
  77. [AC_TRY_COMPILE([$1]
  78. AC_LANG_EXTERN[$2
  79. ], [], $3="$4", $3="$5")
  80. ])dnl
  81. dnl
  82. dnl CL_PROTO_TRY(INCLUDES, ANSI-DECL, TRAD-DECL, ACTION-IF-OK, ACTION-IF-FAILS)
  83. define(CL_PROTO_TRY,
  84. [AC_TRY_COMPILE([$1]
  85. AC_LANG_EXTERN
  86. [#if defined(__STDC__) || defined(__cplusplus)
  87. $2
  88. #else
  89. $3
  90. #endif
  91. ], [], [$4], [$5])
  92. ])dnl
  93. dnl
  94. dnl CL_PROTO_CONST(INCLUDES, ANSI-DECL, TRAD-DECL, CACHE-ID)
  95. define(CL_PROTO_CONST,
  96. [CL_PROTO_TRY([$1], [$2], [$3], $4="", $4="const")]
  97. )dnl
  98. dnl
  99. dnl CL_SILENT(ACTION)
  100. dnl performs ACTION, with AC_MSG_CHECKING and AC_MSG_RESULT being defined away.
  101. define(CL_SILENT,
  102. [pushdef([AC_MSG_CHECKING],[:])dnl
  103. pushdef([AC_CHECKING],[:])dnl
  104. pushdef([AC_MSG_RESULT],[:])dnl
  105. pushdef([AC_MSG_RESULTPROTO],[:])dnl
  106. $1[]dnl
  107. popdef([AC_MSG_RESULTPROTO])dnl
  108. popdef([AC_MSG_RESULT])dnl
  109. popdef([AC_CHECKING])dnl
  110. popdef([AC_MSG_CHECKING])dnl
  111. ])dnl
  112. dnl
  113. AC_DEFUN(CL_PROG_RANLIB, [AC_CHECK_PROG(RANLIB, ranlib, ranlib, true)])dnl
  114. dnl
  115. AC_DEFUN(CL_PROG_INSTALL,
  116. [dnl This is mostly copied from AC_PROG_INSTALL.
  117. # Find a good install program.  We prefer a C program (faster),
  118. # so one script is as good as another.  But avoid the broken or
  119. # incompatible versions:
  120. # SysV /etc/install, /usr/sbin/install
  121. # SunOS /usr/etc/install
  122. # IRIX /sbin/install
  123. # AIX /bin/install
  124. # AFS /usr/afsws/bin/install, which mishandles nonexistent args
  125. # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
  126. # ./install, which can be erroneously created by make from ./install.sh.
  127. AC_MSG_CHECKING(for a BSD compatible install)
  128. if test -z "$INSTALL"; then
  129. AC_CACHE_VAL(cl_cv_path_install,
  130. [  IFS="${IFS=     }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
  131.   for ac_dir in $PATH; do
  132.     # Account for people who put trailing slashes in PATH elements.
  133.     case "$ac_dir/" in
  134.     /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
  135.     *)
  136.       # OSF1 and SCO ODT 3.0 have their own names for install.
  137.       for ac_prog in ginstall installbsd scoinst install; do
  138.         if test -f $ac_dir/$ac_prog; then
  139.       if test $ac_prog = install &&
  140.             grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
  141.         # AIX install.  It has an incompatible calling convention.
  142.         # OSF/1 installbsd also uses dspmsg, but is usable.
  143.         :
  144.       else
  145.         if test $ac_prog = installbsd &&
  146.           grep src/bos $ac_dir/$ac_prog >/dev/null 2>&1; then
  147.           # AIX installbsd doesn't work without option "-g".
  148.           :
  149.         else
  150.           cl_cv_path_install="$ac_dir/$ac_prog -c"
  151.           break 2
  152.         fi
  153.       fi
  154.     fi
  155.       done
  156.       ;;
  157.     esac
  158.   done
  159.   IFS="$ac_save_ifs"
  160.   # As a last resort, use cp.
  161.   test -z "$cl_cv_path_install" && cl_cv_path_install="cp"
  162. ])dnl
  163.   INSTALL="$cl_cv_path_install"
  164. fi
  165. dnl We do special magic for INSTALL instead of AC_SUBST, to get
  166. dnl relative paths right. 
  167. AC_MSG_RESULT($INSTALL)
  168. AC_SUBST(INSTALL)dnl
  169. # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
  170. # It thinks the first close brace ends the variable substitution.
  171. test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='$(INSTALL)'
  172. AC_SUBST(INSTALL_PROGRAM)dnl
  173. if test -z "$INSTALL_DATA"; then
  174.   case "$INSTALL" in
  175.     cp | */cp ) INSTALL_DATA='$(INSTALL)' ;;
  176.     * )         INSTALL_DATA='$(INSTALL) -m 644' ;;
  177.   esac
  178. fi
  179. AC_SUBST(INSTALL_DATA)dnl
  180. ])dnl
  181. dnl
  182. AC_DEFUN(CL_PROG_CP,
  183. [AC_CACHE_CHECK(how to copy files, cl_cv_prog_cp, [
  184. echo "blabla" > conftest.x
  185. err=`/bin/sh -c "cp -p conftest.x conftest.y 2>&1"`
  186. if test -z "$err"; then
  187.   cl_cv_prog_cp='cp -p'
  188. else
  189.   cl_cv_prog_cp='cp'
  190. fi
  191. rm -f conftest*
  192. ])
  193. CP="$cl_cv_prog_cp"
  194. AC_SUBST(CP)dnl
  195. ])dnl
  196. dnl
  197. AC_DEFUN(CL_PROG_LN,
  198. [AC_REQUIRE([CL_PROG_CP])dnl
  199. AC_CACHE_CHECK(how to make hard links, cl_cv_prog_LN, [
  200. rm -f conftestdata conftestfile
  201. echo data > conftestfile
  202. if ln conftestfile conftestdata 2>/dev/null; then
  203.   cl_cv_prog_LN=ln
  204. else
  205.   cl_cv_prog_LN="$cl_cv_prog_cp"
  206. fi
  207. rm -f conftestdata conftestfile
  208. ])
  209. LN="$cl_cv_prog_LN"
  210. AC_SUBST(LN)dnl
  211. ])dnl
  212. dnl
  213. AC_DEFUN(CL_PROG_LN_S,
  214. [AC_REQUIRE([CL_PROG_LN])dnl
  215. dnl Make a symlink if possible; otherwise try a hard link. On filesystems
  216. dnl which support neither symlink nor hard link, use a plain copy.
  217. AC_MSG_CHECKING(whether ln -s works)
  218. AC_CACHE_VAL(cl_cv_prog_LN_S, [
  219. rm -f conftestdata
  220. if ln -s X conftestdata 2>/dev/null; then
  221.   cl_cv_prog_LN_S="ln -s"
  222. else
  223.   cl_cv_prog_LN_S="$cl_cv_prog_LN"
  224. fi
  225. rm -f conftestdata
  226. ])dnl
  227. if test "$cl_cv_prog_LN_S" = "ln -s"; then
  228.   AC_MSG_RESULT(yes)
  229. else
  230.   AC_MSG_RESULT(no)
  231. fi
  232. LN_S="$cl_cv_prog_LN_S"
  233. AC_SUBST(LN_S)dnl
  234. ])dnl
  235. dnl
  236. AC_DEFUN(CL_CANONICAL_HOST,
  237. [AC_REQUIRE([AC_PROG_CC]) dnl Actually: AC_REQUIRE([CL_CC_WORKS])
  238. dnl Set ac_aux_dir before the cache check, because AM_PROG_LIBTOOL needs it.
  239. ac_aux_dir=${srcdir}/$1
  240. AC_CACHE_CHECK(host system type, cl_cv_host, [
  241. dnl A substitute for AC_CONFIG_AUX_DIR_DEFAULT, so we don't need install.sh.
  242. ac_config_guess=$ac_aux_dir/config.guess
  243. ac_config_sub=$ac_aux_dir/config.sub
  244. dnl Mostly copied from AC_CANONICAL_HOST.
  245. # Make sure we can run config.sub.
  246. if $ac_config_sub sun4 >/dev/null 2>&1; then :
  247. else AC_MSG_ERROR(can not run $ac_config_sub)
  248. fi
  249. host_alias=$host
  250. case "$host_alias" in
  251. NONE)
  252.   case $nonopt in
  253.   NONE) dnl config.guess needs to compile things
  254.         host_alias=`export CC; $ac_config_guess` ;;
  255.   *)    host_alias=$nonopt ;;
  256.   esac ;;
  257. esac
  258. # Don't fail just because the system is not listed in GNU's database.
  259. if test -n "$host_alias"; then
  260.   host=`$ac_config_sub $host_alias`
  261. else
  262.   host=unknown-unknown-unknown
  263. fi
  264. cl_cv_host="$host"
  265. ])
  266. host="$cl_cv_host"
  267. changequote(,)dnl
  268. host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
  269. host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
  270. host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
  271. changequote([,])dnl
  272. AC_SUBST(host)dnl
  273. AC_SUBST(host_cpu)dnl
  274. AC_SUBST(host_vendor)dnl
  275. AC_SUBST(host_os)dnl
  276. ])dnl
  277. dnl
  278. AC_DEFUN(CL_ICONV,
  279. [dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and
  280. dnl those with the standalone libiconv installed).
  281. AC_CACHE_CHECK(for iconv, cl_cv_func_iconv, [
  282. cl_cv_func_iconv=no
  283. cl_cv_lib_iconv=no
  284. AC_TRY_LINK([#include <stdlib.h>
  285. #include <iconv.h>],
  286. [iconv_t cd = iconv_open("",""); iconv(cd,NULL,NULL,NULL,NULL); iconv_close(cd);],
  287. cl_cv_func_iconv=yes)
  288. if test "$cl_cv_func_iconv" = no; then
  289. cl_save_LIBS="$LIBS"
  290. LIBS="$LIBS -liconv"
  291. AC_TRY_LINK([#include <stdlib.h>
  292. #include <iconv.h>],
  293. [iconv_t cd = iconv_open("",""); iconv(cd,NULL,NULL,NULL,NULL); iconv_close(cd);],
  294. cl_cv_lib_iconv=yes
  295. cl_cv_func_iconv=yes)
  296. LIBS="$cl_save_LIBS"
  297. fi
  298. ])
  299. if test "$cl_cv_func_iconv" = yes; then
  300.   AC_DEFINE(HAVE_ICONV)
  301. CL_PROTO([iconv], [
  302. CL_PROTO_CONST([
  303. #include <stdlib.h>
  304. #ifdef HAVE_UNISTD_H
  305. #include <unistd.h>
  306. #endif
  307. #include <sys/types.h>
  308. #include <iconv.h>
  309. ], [size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t* outbytesleft);],
  310. [size_t iconv();],
  311. cl_cv_proto_iconv_arg1)],
  312. [extern size_t iconv (iconv_t cd, $cl_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t* outbytesleft);])
  313. AC_DEFINE_UNQUOTED(ICONV_CONST,$cl_cv_proto_iconv_arg1)
  314. fi
  315. LIBICONV=
  316. if test "$cl_cv_lib_iconv" = yes; then
  317.   LIBICONV="-liconv"
  318. fi
  319. AC_SUBST(LIBICONV)
  320. ])dnl
  321. dnl
  322. AC_DEFUN(CL_WORDS_LITTLEENDIAN,
  323. [AC_CACHE_CHECK(byte ordering, cl_cv_sys_endian, [
  324. AC_TRY_RUN([int main () {
  325.   /* Are we little or big endian?  From Harbison&Steele.  */
  326.   union
  327.   {
  328.     long l;
  329.     char c[sizeof (long)];
  330.   } u;
  331.   u.l = 1;
  332.   exit (u.c[0] == 1);
  333. }],
  334. cl_cv_sys_endian="big endian",
  335. cl_cv_sys_endian="little endian",
  336. : # must guess the endianness
  337. )
  338. if test -z "$cl_cv_sys_endian"; then
  339. AC_EGREP_CPP(yes,[#if defined(m68k) || defined(__m68k__) || defined(mc68000) || defined(mc68020) || defined(__mc68020__) || defined(sparc) || defined(__sparc__) || defined(MIPSEB) || defined(__MIPSEB__) || defined(hppa) || defined(__hppa) || defined(m88000) || defined(__m88k__)
  340.   yes
  341. #endif
  342. ], cl_cv_sys_endian="big endian")
  343. fi
  344. if test -z "$cl_cv_sys_endian"; then
  345. AC_EGREP_CPP(yes,[#if defined(i386) || defined(__i386) || defined(__i386__) || defined(_I386) || defined(MIPSEL) || defined(__MIPSEL__) || defined(__alpha)
  346.   yes
  347. #endif
  348. ], cl_cv_sys_endian="little endian")
  349. fi
  350. if test -z "$cl_cv_sys_endian"; then
  351. cl_cv_sys_endian="guessing little endian"
  352. fi
  353. ])
  354. case "$cl_cv_sys_endian" in
  355.   *little*) AC_DEFINE(WORDS_LITTLEENDIAN) ;;
  356.   *big*)    ;;
  357. esac
  358. ])dnl
  359. dnl
  360. ## libtool.m4 - Configure libtool for the target system. -*-Shell-script-*-
  361. ## Copyright (C) 1996-1998 Free Software Foundation, Inc.
  362. ## Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
  363. ##
  364. ## This program is free software; you can redistribute it and/or modify
  365. ## it under the terms of the GNU General Public License as published by
  366. ## the Free Software Foundation; either version 2 of the License, or
  367. ## (at your option) any later version.
  368. ##
  369. ## This program is distributed in the hope that it will be useful, but
  370. ## WITHOUT ANY WARRANTY; without even the implied warranty of
  371. ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  372. ## General Public License for more details.
  373. ##
  374. ## You should have received a copy of the GNU General Public License
  375. ## along with this program; if not, write to the Free Software
  376. ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  377. ##
  378. ## As a special exception to the GNU General Public License, if you
  379. ## distribute this file as part of a program that contains a
  380. ## configuration script generated by Autoconf, you may include it under
  381. ## the same distribution terms that you use for the rest of that program.
  382.  
  383. # serial 24 AM_PROG_LIBTOOL
  384. AC_DEFUN(AM_PROG_LIBTOOL,
  385. [AC_REQUIRE([AM_ENABLE_SHARED])dnl
  386. AC_REQUIRE([AM_ENABLE_STATIC])dnl
  387. AC_REQUIRE([CL_CANONICAL_HOST])dnl
  388. AC_REQUIRE([CL_PROG_RANLIB])dnl
  389. AC_REQUIRE([AC_PROG_CC])dnl
  390. AC_REQUIRE([AM_PROG_LD])dnl
  391. AC_REQUIRE([AM_PROG_NM])dnl
  392. AC_REQUIRE([CL_PROG_LN_S])dnl
  393. dnl
  394. # Always use our own libtool.
  395. LIBTOOL='$(SHELL) $(top_builddir)/libtool'
  396. AC_SUBST(LIBTOOL)dnl
  397.  
  398. # Check for any special flags to pass to ltconfig.
  399. libtool_flags=
  400. test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
  401. test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
  402. test "$silent" = yes && libtool_flags="$libtool_flags --silent"
  403. test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
  404. test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
  405.  
  406. # Some flags need to be propagated to the compiler or linker for good
  407. # libtool support.
  408. case "$host" in
  409. *-*-irix6*)
  410.   # Find out which ABI we are using.
  411.   echo '[#]line __oline__ "configure"' > conftest.$ac_ext
  412.   if AC_TRY_EVAL(ac_compile); then
  413.     case "`/usr/bin/file conftest.o`" in
  414.     *32-bit*)
  415.       LD="${LD-ld} -32"
  416.       ;;
  417.     *N32*)
  418.       LD="${LD-ld} -n32"
  419.       ;;
  420.     *64-bit*)
  421.       LD="${LD-ld} -64"
  422.       ;;
  423.     esac
  424.   fi
  425.   rm -rf conftest*
  426.   ;;
  427.  
  428. *-*-sco3.2v5*)
  429.   # On SCO OpenServer 5, we need -belf to get full-featured binaries.
  430.   CFLAGS="$CFLAGS -belf"
  431.   ;;
  432. esac
  433.  
  434. # Actually configure libtool.  ac_aux_dir is where install-sh is found.
  435. CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
  436. LD="$LD" NM="$NM" RANLIB="$RANLIB" LN_S="$LN_S" \
  437. ${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig \
  438. $libtool_flags --no-verify $ac_aux_dir/ltmain.sh $host \
  439. || AC_MSG_ERROR([libtool configure failed])
  440. ])
  441.  
  442. # AM_ENABLE_SHARED - implement the --enable-shared flag
  443. # Usage: AM_ENABLE_SHARED[(DEFAULT)]
  444. #   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
  445. #   `yes'.
  446. AC_DEFUN(AM_ENABLE_SHARED,
  447. [define([AM_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
  448. AC_ARG_ENABLE(shared,
  449. changequote(<<, >>)dnl
  450. <<  --enable-shared         build shared libraries [default=>>AM_ENABLE_SHARED_DEFAULT]
  451. changequote([, ])dnl
  452. [  --enable-shared=PKGS    only build shared libraries if the current package
  453.                           appears as an element in the PKGS list],
  454. [p=${PACKAGE-default}
  455. case "$enableval" in
  456. yes) enable_shared=yes ;;
  457. no) enable_shared=no ;;
  458. *)
  459.   enable_shared=no
  460.   # Look at the argument we got.  We use all the common list separators.
  461.   IFS="${IFS=     }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
  462.   for pkg in $enableval; do
  463.     if test "X$pkg" = "X$p"; then
  464.       enable_shared=yes
  465.     fi
  466.   done
  467.   IFS="$ac_save_ifs"
  468.   ;;
  469. esac],
  470. enable_shared=AM_ENABLE_SHARED_DEFAULT)dnl
  471. ])
  472.  
  473. # AM_DISABLE_SHARED - set the default shared flag to --disable-shared
  474. AC_DEFUN(AM_DISABLE_SHARED,
  475. [AM_ENABLE_SHARED(no)])
  476.  
  477. # AM_DISABLE_STATIC - set the default static flag to --disable-static
  478. AC_DEFUN(AM_DISABLE_STATIC,
  479. [AM_ENABLE_STATIC(no)])
  480.  
  481. # AM_ENABLE_STATIC - implement the --enable-static flag
  482. # Usage: AM_ENABLE_STATIC[(DEFAULT)]
  483. #   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
  484. #   `yes'.
  485. AC_DEFUN(AM_ENABLE_STATIC,
  486. [define([AM_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
  487. AC_ARG_ENABLE(static,
  488. changequote(<<, >>)dnl
  489. <<  --enable-static         build static libraries [default=>>AM_ENABLE_STATIC_DEFAULT]
  490. changequote([, ])dnl
  491. [  --enable-static=PKGS    only build shared libraries if the current package
  492.                           appears as an element in the PKGS list],
  493. [p=${PACKAGE-default}
  494. case "$enableval" in
  495. yes) enable_static=yes ;;
  496. no) enable_static=no ;;
  497. *)
  498.   enable_static=no
  499.   # Look at the argument we got.  We use all the common list separators.
  500.   IFS="${IFS=     }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
  501.   for pkg in $enableval; do
  502.     if test "X$pkg" = "X$p"; then
  503.       enable_static=yes
  504.     fi
  505.   done
  506.   IFS="$ac_save_ifs"
  507.   ;;
  508. esac],
  509. enable_static=AM_ENABLE_STATIC_DEFAULT)dnl
  510. ])
  511.  
  512.  
  513. # AM_PROG_LD - find the path to the GNU or non-GNU linker
  514. AC_DEFUN(AM_PROG_LD,
  515. [AC_ARG_WITH(gnu-ld,
  516. [  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]],
  517. test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
  518. AC_REQUIRE([AC_PROG_CC])
  519. ac_prog=ld
  520. if test "$ac_cv_prog_gcc" = yes; then
  521.   # Check if gcc -print-prog-name=ld gives a path.
  522.   AC_MSG_CHECKING([for ld used by GCC])
  523.   ac_prog=`($CC -print-prog-name=ld) 2>&5`
  524.   case "$ac_prog" in
  525.   # Accept absolute paths.
  526.   /* | [A-Za-z]:\\*)
  527.     test -z "$LD" && LD="$ac_prog"
  528.     ;;
  529.   "")
  530.     # If it fails, then pretend we aren't using GCC.
  531.     ac_prog=ld
  532.     ;;
  533.   *)
  534.     # If it is relative, then search for the first ld in PATH.
  535.     with_gnu_ld=unknown
  536.     ;;
  537.   esac
  538. elif test "$with_gnu_ld" = yes; then
  539.   AC_MSG_CHECKING([for GNU ld])
  540. else
  541.   AC_MSG_CHECKING([for non-GNU ld])
  542. fi
  543. AC_CACHE_VAL(ac_cv_path_LD,
  544. [if test -z "$LD"; then
  545.   IFS="${IFS=     }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
  546.   for ac_dir in $PATH; do
  547.     test -z "$ac_dir" && ac_dir=.
  548.     if test -f "$ac_dir/$ac_prog"; then
  549.       ac_cv_path_LD="$ac_dir/$ac_prog"
  550.       # Check to see if the program is GNU ld.  I'd rather use --version,
  551.       # but apparently some GNU ld's only accept -v.
  552.       # Break only if it was the GNU/non-GNU ld that we prefer.
  553.       if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
  554.     test "$with_gnu_ld" != no && break
  555.       else
  556.         test "$with_gnu_ld" != yes && break
  557.       fi
  558.     fi
  559.   done
  560.   IFS="$ac_save_ifs"
  561. else
  562.   ac_cv_path_LD="$LD" # Let the user override the test with a path.
  563. fi])
  564. LD="$ac_cv_path_LD"
  565. if test -n "$LD"; then
  566.   AC_MSG_RESULT($LD)
  567. else
  568.   AC_MSG_RESULT(no)
  569. fi
  570. test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
  571. AC_SUBST(LD)
  572. AM_PROG_LD_GNU
  573. ])
  574.  
  575. AC_DEFUN(AM_PROG_LD_GNU,
  576. [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
  577. [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
  578. if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
  579.   ac_cv_prog_gnu_ld=yes
  580. else
  581.   ac_cv_prog_gnu_ld=no
  582. fi])
  583. ])
  584.  
  585. # AM_PROG_NM - find the path to a BSD-compatible name lister
  586. AC_DEFUN(AM_PROG_NM,
  587. [AC_MSG_CHECKING([for BSD-compatible nm])
  588. AC_CACHE_VAL(ac_cv_path_NM,
  589. [case "$NM" in
  590. /* | [A-Za-z]:\\*)
  591.   ac_cv_path_NM="$NM" # Let the user override the test with a path.
  592.   ;;
  593. *)
  594.   IFS="${IFS=     }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
  595.   for ac_dir in /usr/ucb /usr/ccs/bin $PATH /bin; do
  596.     test -z "$ac_dir" && ac_dir=.
  597.     if test -f $ac_dir/nm; then
  598.       # Check to see if the nm accepts a BSD-compat flag.
  599.       # Adding the `sed 1q' prevents false positives on HP-UX, which says:
  600.       #   nm: unknown option "B" ignored
  601.       if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
  602.         ac_cv_path_NM="$ac_dir/nm -B"
  603.       elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
  604.         ac_cv_path_NM="$ac_dir/nm -p"
  605.       else
  606.         ac_cv_path_NM="$ac_dir/nm"
  607.       fi
  608.       break
  609.     fi
  610.   done
  611.   IFS="$ac_save_ifs"
  612.   test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
  613.   ;;
  614. esac])
  615. NM="$ac_cv_path_NM"
  616. AC_MSG_RESULT([$NM])
  617. AC_SUBST(NM)
  618. ])
  619.